package com.yuetong.business.domain;

import java.math.BigDecimal;
import java.util.List;

import com.yuetong.common.annotation.Excel;
import com.yuetong.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 场所信息，用于存储各个场所的基本信息及其层级关系对象 yt_place_info
 *
 * @author  卓晓君
 * @date 2025-03-07
 */
public class YtPlaceInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 场所ID */
    private Long placeId;

    /** 父场所ID */
    @Excel(name = "父场所ID")
    private Long parentId;

    /** 场所名称 */
    @Excel(name = "场所名称")
    private String placeName;

    /** 场所类型 */
    @Excel(name = "场所类型")
    private String placeType;

    /** 省份 */
    @Excel(name = "省份")
    private String province;

    /** 城市 */
    @Excel(name = "城市")
    private String city;

    /** 区县 */
    @Excel(name = "区县")
    private String district;

    /** 街道或乡镇 */
    @Excel(name = "街道或乡镇")
    private String town;

    /** 地址 */
    @Excel(name = "地址")
    private String address;

    /** 区域 */
    @Excel(name = "区域")
    private String area;

    /** 社区或村 */
    @Excel(name = "社区或村")
    private String village;

    /** 联系人 */
    @Excel(name = "联系人")
    private String contactPerson;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phoneNumber;

    /** 纬度 */
    @Excel(name = "纬度")
    private BigDecimal latitude;

    /** 经度 */
    @Excel(name = "经度")
    private BigDecimal longitude;

    /** 经度 */
    @Excel(name = "总金额")
    private BigDecimal amount;

    /** 台数 */
    @Excel(name = "总金额")
    private Integer elevatorNum;

    /** 图片集合（JSON数组，存储图片路径） */
    @Excel(name = "图片集合", readConverterExp = "J=SON数组，存储图片路径")
    private String images;

    /** 内容 */
    @Excel(name = "内容")
    private String richText;

    /** 排序字段 */
    @Excel(name = "排序字段")
    private Long sortOrder;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 场所状态 */
    @Excel(name = "场所状态")
    private String status;

    /** 电梯信息，用于存储电梯的基本信息及其所属场所信息 */
    private List<YtElevatorInfo> ytElevatorInfoList;

    public void setPlaceId(Long placeId)
    {
        this.placeId = placeId;
    }

    public Long getPlaceId()
    {
        return placeId;
    }
    public void setParentId(Long parentId)
    {
        this.parentId = parentId;
    }

    public Long getParentId()
    {
        return parentId;
    }
    public void setPlaceName(String placeName)
    {
        this.placeName = placeName;
    }

    public String getPlaceName()
    {
        return placeName;
    }
    public void setPlaceType(String placeType)
    {
        this.placeType = placeType;
    }

    public String getPlaceType()
    {
        return placeType;
    }
    public void setProvince(String province)
    {
        this.province = province;
    }

    public String getProvince()
    {
        return province;
    }
    public void setCity(String city)
    {
        this.city = city;
    }

    public String getCity()
    {
        return city;
    }
    public void setDistrict(String district)
    {
        this.district = district;
    }

    public String getDistrict()
    {
        return district;
    }
    public void setTown(String town)
    {
        this.town = town;
    }

    public String getTown()
    {
        return town;
    }
    public void setAddress(String address)
    {
        this.address = address;
    }

    public String getAddress()
    {
        return address;
    }
    public void setVillage(String village)
    {
        this.village = village;
    }

    public String getVillage()
    {
        return village;
    }
    public void setContactPerson(String contactPerson)
    {
        this.contactPerson = contactPerson;
    }

    public String getContactPerson()
    {
        return contactPerson;
    }
    public void setPhoneNumber(String phoneNumber)
    {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber()
    {
        return phoneNumber;
    }
    public void setLatitude(BigDecimal latitude)
    {
        this.latitude = latitude;
    }

    public BigDecimal getLatitude()
    {
        return latitude;
    }
    public void setLongitude(BigDecimal longitude)
    {
        this.longitude = longitude;
    }

    public BigDecimal getLongitude()
    {
        return longitude;
    }
    public void setImages(String images)
    {
        this.images = images;
    }

    public String getImages()
    {
        return images;
    }
    public void setRichText(String richText)
    {
        this.richText = richText;
    }

    public String getRichText()
    {
        return richText;
    }
    public void setSortOrder(Long sortOrder)
    {
        this.sortOrder = sortOrder;
    }

    public Long getSortOrder()
    {
        return sortOrder;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag()
    {
        return delFlag;
    }
    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }

    public String getstatus() {
        return status;
    }

    public void setstatus(String status) {
        this.status = status;
    }

    public List<YtElevatorInfo> getYtElevatorInfoList() {
        return ytElevatorInfoList;
    }

    public void setYtElevatorInfoList(List<YtElevatorInfo> ytElevatorInfoList) {
        this.ytElevatorInfoList = ytElevatorInfoList;
    }
    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public Integer getElevatorNum() {
        return elevatorNum;
    }

    public void setElevatorNum(Integer elevatorNum) {
        this.elevatorNum = elevatorNum;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("placeId", getPlaceId())
                .append("parentId", getParentId())
                .append("placeName", getPlaceName())
                .append("placeType", getPlaceType())
                .append("province", getProvince())
                .append("area",getArea())
                .append("city", getCity())
                .append("district", getDistrict())
                .append("town", getTown())
                .append("address", getAddress())
                .append("village", getVillage())
                .append("contactPerson", getContactPerson())
                .append("phoneNumber", getPhoneNumber())
                .append("latitude", getLatitude())
                .append("longitude", getLongitude())
                .append("images", getImages())
                .append("richText", getRichText())
                .append("sortOrder", getSortOrder())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .append("delFlag", getDelFlag())
                .append("status", getstatus())
                .append("ytElevatorInfoList", getYtElevatorInfoList())
                .toString();
    }



}
